// 注：这个文件被用于管理项目中所有与“品牌管理模块”有关的接口
import request from "@/utils/request";
import type {typeOfResponceDataOfGetTheListOfTrademarkThatHaveBeenHad,typeOfTrademarkThatHaveBeenHad} from "@/api/product/trademark/type";
// 注：导入类型时必须带有“type”关键字，否则控制台中会报错，导致组件页面无法被成功渲染↑
// 品牌管理模块需要使用到的接口地址↓
enum API {
    // 获取已有品牌列表的接口地址↓
    TRADEMARK_URL = "/admin/product/baseTrademark",
    // 添加品牌的接口地址↓
    ADD_TRADEMRAK_URL = "/admin/product/baseTrademark/save",
    // 修改已有品牌的接口地址↓
    UPDATE_TRADEMARK_URL = "/admin/product/baseTrademark/update",
    // 删除已有品牌的接口地址↓
    DELETE_TRADEMARK_URL = "/admin/product/baseTrademark/remove"
}
// 对外导出发送请求的方法↓
// 请求获取已有品牌数据列表时需要用到的方法↓
// 参数的含义：page（获取位于列表中第几页的数据）、size（每页显示的数据的条数）↓
// export const requestTheListOfTrademarkThatHaveBeenHad = (page:number,size:number) => request.get<any,any>(API.TRADEMARK_URL + `/${page}/${size}`)
export const requestTheListOfTrademarkThatHaveBeenHad = (page:number,size:number) => request.get<any,typeOfResponceDataOfGetTheListOfTrademarkThatHaveBeenHad>(API.TRADEMARK_URL + `/${page}/${size}`)
// 请求添加或修改（更新）品牌数据时需要用到的方法↓
export const requestAddOrUpdateTrademark = (data:typeOfTrademarkThatHaveBeenHad) => {
    if (data.id) {
        // 注：如果进入了这个代码块，那么说明当前的操作是“修改已有品牌数据”（由于服务器返回的数据中的“data”属性的值是“null”，所以此处不需要判断其所属的类型，直接使用“any”类型即可）↓
        return request.put<any,any>(API.UPDATE_TRADEMARK_URL,data)
    } else {
        // 如果进入了这个代码块，那么说明当前的操作是“添加品牌数据”（在此处也把服务器返回的数据定义为“any”类型，原因同上↑）
        return request.post<any,any>(API.ADD_TRADEMRAK_URL,data)
    }
}
// 请求删除已有品牌数据时需要用到的方法↓
export const requestDeleteTrademark = (id:number) => request.delete<any,any>(API.DELETE_TRADEMARK_URL + `/${id}`)